lectures.alex.balgavy.eu

Lecture notes from university.
git clone git://git.alex.balgavy.eu/lectures.alex.balgavy.eu.git
Log | Files | Refs | Submodules

Basics of memory: no abstraction.html (2521B)


      1 <?xml version="1.0" encoding="UTF-8"?>
      2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      3 <html><head><link rel="stylesheet" href="sitewide.css"><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/><meta name="exporter-version" content="Evernote Mac 7.6 (457297)"/><meta name="altitude" content="-4.211421489715576"/><meta name="author" content="Alex Balgavy"/><meta name="created" content="2018-12-18 23:06:14 +0000"/><meta name="latitude" content="52.30036414031362"/><meta name="longitude" content="4.98811279251146"/><meta name="source" content="desktop.mac"/><meta name="updated" content="2018-12-18 23:06:25 +0000"/><title>Basics of memory: no abstraction</title></head><body><div style="-en-paragraph:true;"><span style="-en-paragraph:true;">memory address space: addresses from first byte to last byte. in physical memory, it’s physical memory address space.</span></div><div style="-en-paragraph:true;"><br/></div><div style="-en-paragraph:true;"><span style="-en-paragraph:true;">no memory abstraction: monoprogramming</span></div><div style="-en-paragraph:true;"><span style="-en-paragraph:true;">options of arranging memory address space:</span></div><div style="-en-paragraph:true;"><br/></div><div style="-en-paragraph:true;"><img src="Basics%20of%20memory%3A%20no%20abstraction.resources/screenshot_2.png" height="290" width="587"/></div><div style="-en-paragraph:true;"><span style="-en-paragraph:true;">   </span></div><div style="-en-paragraph:true;"><span style="-en-paragraph:true;">no memory abstraction: multiprogramming</span></div><ul><li><div>naive approach: move each program to a dedicated region:</div><div><img src="Basics%20of%20memory%3A%20no%20abstraction.resources/screenshot_1.png" height="245" width="268"/></div></li><ul><li><div>problems:
      4 </div></li><ul><li><div>relocation - you have to move to a completely different address.</div></li><ul><li><div>load-time relocation option — as soon as program is loaded, patch all addresses with new ones</div></li></ul><li><div>protection - both programs live together in memory. one program could overwrite the other</div></li><ul><li><div>memory keys option — current memory protection key gets checked against memory protection key of address</div></li></ul></ul></ul></ul><div style="margin-left: 200px;"><img src="Basics%20of%20memory%3A%20no%20abstraction.resources/screenshot.png" height="240" width="282"/></div><div><br/></div></body></html>